﻿using System;
using SharpSqlAnalyzer.pp.processor;
using SharpSqlAnalyzer.pp.stmtformatter.type;
using SharpSqlAnalyzer.pp.stmtformatter.type.comm;

namespace SharpSqlAnalyzer.pp.stmtformatter.builder.comm
{
	// Token: 0x0200021D RID: 541
	public class CreateViewStmtFormatterBuilder : AbstractStmtFormatterBuilder
	{
		// Token: 0x06001266 RID: 4710 RVA: 0x00318E98 File Offset: 0x00317098
		protected internal override void initSpecialProcessorForFormatter(AbstractStmtFormatter formatterArg)
		{
			CreateViewStmtFormatter createViewStmtFormatter = formatterArg as CreateViewStmtFormatter;
			createViewStmtFormatter.addSpecialProcessor(ProcessorFactory.createCapitalisationProcessor(this.Option));
			createViewStmtFormatter.addSpecialProcessor(ProcessorFactory.createCombineWhitespaceAndClearReturnProcessor(this.Option));
			createViewStmtFormatter.addSpecialProcessor(ProcessorFactory.createCreateViewReturnProcessor(this.Option));
			createViewStmtFormatter.addParameterProcessor(ProcessorFactory.createColumnlistCommaProcessor(this.Option, this.Option.parametersComma, this.Option.parametersStyle));
			createViewStmtFormatter.addParameterProcessor(ProcessorFactory.createAlignAliasProcessor(this.Option, true, this.Option.parametersStyle));
		}

		// Token: 0x06001267 RID: 4711 RVA: 0x00318F21 File Offset: 0x00317121
		protected internal override AbstractStmtFormatter newInstanceFormatter()
		{
			return new CreateViewStmtFormatter();
		}
	}
}
